package com.boomshake.vo;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

/**
 * 用户信息VO
 *
 * @author BoomShake
 * @date 2024-12-15
 */
@Data
public class UserInfoVO {

    /**
     * 用户ID
     */
    private Long id;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 头像
     */
    private String avatar;

    /**
     * 手机号
     */
    private String phone;

    /**
     * 真实姓名
     */
    private String realName;

    /**
     * 性别：1男 2女
     */
    private Integer gender;

    /**
     * 生日
     */
    private LocalDate birthday;

    /**
     * 佣金余额
     */
    private BigDecimal commissionBalance;

    /**
     * 积分
     */
    private Integer points;

    /**
     * 实名状态：0未认证 1已认证
     */
    private Integer realNameStatus;

    /**
     * 角色列表
     */
    private List<String> roles;

    /**
     * 分销员信息
     */
    private DistributorInfo distributorInfo;

    @Data
    public static class DistributorInfo {
        /**
         * 门店ID
         */
        private Long storeId;

        /**
         * 门店名称
         */
        private String storeName;

        /**
         * 分销等级
         */
        private Integer level;

        /**
         * 分销员编码
         */
        private String code;

        /**
         * 收款码
         */
        private String paymentQrcode;

        /**
         * 总佣金
         */
        private BigDecimal totalCommission;

        /**
         * 已提现佣金
         */
        private BigDecimal withdrawnCommission;

        /**
         * 待提现佣金
         */
        private BigDecimal pendingCommission;
    }
} 